<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>角色管理</title>
	<meta name="renderer" content="webkit">
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
	<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
	<meta name="apple-mobile-web-app-status-bar-style" content="black">
	<meta name="apple-mobile-web-app-capable" content="yes">
	<meta name="format-detection" content="telephone=no">
	<link rel="stylesheet" href="${ctx }/resources/layui/css/layui.css" media="all" />
	<link rel="stylesheet" href="${ctx }/resources/css/public.css" media="all" />
</head>
<body class="childrenBody">

<!--  搜索 查询   -->
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 5px;">
  <legend>查询条件</legend>
</fieldset>
<form class="layui-form" id="searchFrm">
<div class="layui-form-item">
    <div class="layui-inline">
      <label class="layui-form-label">角色名称</label>
      <div class="layui-input-inline">
        <input type="text" name="name" id="name" autocomplete="off" class="layui-input">
      </div>
    </div>
    <div class="layui-inline">
      <label class="layui-form-label">角色备注</label>
      <div class="layui-input-inline">
        <input type="text" name="remark" id="remark" autocomplete="off" class="layui-input">
      </div>
    </div>
    
    <div class="layui-inline">
    	<a href="javascript:void(0)" class="search_btn layui-btn">查询</a>
    	<button type="reset" class="layui-btn layui-btn-warm" >重置</button>
    </div>
 </div>
</form>

<!-- 数据表格 -->
	<table id="roleList" lay-filter="roleList"></table>
	<!--表格工具条  批量删除-->
	<script type="text/html" id="tableToolBar">
		<a class="layui-btn layui-btn" lay-event="add">添加</a>
		<a class="layui-btn layui-btn layui-btn-danger" lay-event="batchDel">批量删除</a>
	</script>
	
	<!--表格数据 工具条-->
	<script type="text/html" id="roleListBar">
		<a class="layui-btn layui-btn-xs layui-btn-warm" lay-event="update">修改</a>
		<a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="del">删除</a>
		<a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="selectPermission">分配权限</a>
	</script>

<script type="text/javascript" src="${ctx }/resources/layui/layui.js"></script>
<script type="text/javascript">
var tableIns;
function reloadTable(id) {
	tableIns.reload({
	    page: {
	        curr: 1 //重新从第 1 页开始
	    },
	    where: {
	    	name: $("#name").val() ,  //搜索的关键字
	        remark: $("#remark").val() ,
	    }
	});
}

    layui.use(['form','layer','laydate','table','laytpl'],function(){
        var form = layui.form,
            layer = parent.layer === undefined ? layui.layer : top.layer,
            $ = layui.jquery,
            laydate = layui.laydate,
            laytpl = layui.laytpl,
            table = layui.table;

        //角色列表
        tableIns = table.render({
            elem: '#roleList',
            url : '${ctx}/role/queryAllRole.action',
            cellMinWidth : 95,
            toolbar: '#tableToolBar',
            page : true,
            height : "full-125",
            limit : 10,
            limits : [10,15,20,25],
            id : "roleListTable",
            cols : [[
                {type: "checkbox", fixed:"left", width:50},
                {field: 'id', title: '角色ID', width:80, align:"center"},
                {field: 'name', title: '角色名称', align:"center",width:300},
                {field: 'remark', title: '备注', align:'center',width:150},
                {field: 'available', title: '是否可用',  align:'center',templet:function(data){
                	return data.available==1?"<font color=blue>可用</font>":"<font color=red>不可用</font>"
                }},
                {title: '操作', width:170, templet:'#roleListBar',fixed:"right",align:"center"}
            ]]
        });
        
        //搜索【此功能需要后台配合，所以暂时没有动态效果演示】
        $(".search_btn").on("click",function(){
        	table.reload("roleListTable",{
        	    page: {
        	        curr: 1 //重新从第 1 页开始
        	    },
        	    where: {
        	    	name: $("#name").val() ,  //搜索的关键字
        	        remark: $("#remark").val() ,
        	    }
        	});       
        });
        
        //监听头工具栏事件
        table.on('toolbar(roleList)', function(obj){
            switch(obj.event){
            	case 'add':
            		toAddRole();
            		break;
                case 'batchDel':
                	var checkStatus = table.checkStatus('roleListTable')
                    ,data = checkStatus.data; //获取选中的数据
                    var ids="?a=1";
                    if(data.length>0){
                    	for(var i in data){
                    		ids+="&ids="+data[i].id;
                    	}
                    	layer.confirm('确定删除选中的角色？', {icon: 3, title: '提示信息'}, function (index) {
	                         $.post("${ctx}/role/batchDeleteRole.action"+ids,function(data){
	                        	layer.msg(data.msg);
	                        	tableIns.reload();
	                        	layer.close(index);
	                         })
	                    })
                    }else{
                    	layer.msg("请选择需要删除的角色");
                    }
            };
        });

      //准备添加，打开添加页面
      function toAddRole() {
		var index= layui.layer.open({
			title:'添加角色',
			type: 2, 
			area: ['800px','600px'],
			content: '${ctx}/role/toAddRole.action' , //这里content是一个URL，如果你不想让iframe出现滚动条，你还可以content: ['http://sentsin.com', 'no']
			success : function(layero, index){
	                  var body = layui.layer.getChildFrame('body', index);
	                  setTimeout(function(){
	                      layui.layer.tips('点击此处返回角色列表', '.layui-layer-setwin .layui-layer-close', {
	                          tips: 3
	                      });
	                  },500)
	              }
		})
		//默认最大化窗口
	          //layui.layer.full(index);
	          //改变窗口大小时，重置弹窗的宽高，防止超出可视区域（如F12调出debug的操作）
		$(window).on("resize",function(){
	              layui.layer.full(index);
	          })
	}


        //列表操作
        table.on('tool(roleList)', function(obj){
            var layEvent = obj.event,
                data = obj.data;
            if(layEvent === 'update'){
				toUpdate(data.id);  //根据角色ID查
			}else if(layEvent === 'del'){ //删除
            	layer.confirm('确定删除此角色？',{icon:3, title:'提示信息'},function(index){
                    $.post("${ctx}/role/deleteRole.action?id="+data.id,function(data){
                    	layer.msg(data.msg);
                    	tableIns.reload();
                        layer.close(index);
                    }),
                    tableIns.reload();
                    layer.close(index);
                })
            }else if(layEvent === 'selectPermission'){
            	toSelectPermission(data.id);
            }   
        });
        
      //打开修改层
        function toUpdate(id) {
        	var index= layui.layer.open({
    			title:'修改角色',
    			type: 2, 
    			area: ['800px','600px'],
    			content: '${ctx}/role/toUpdateRole.action?id='+id , //这里content是一个URL，如果你不想让iframe出现滚动条，你还可以content: ['http://sentsin.com', 'no']
    			success : function(layero, index){
                    var body = layui.layer.getChildFrame('body', index);
                    setTimeout(function(){
                        layui.layer.tips('点击此处返回角色列表', '.layui-layer-setwin .layui-layer-close', {
                            tips: 3
                        });
                    },500)
                }
    		})
    		//默认最大化窗口
            //layui.layer.full(index);
            //改变窗口大小时，重置弹窗的宽高，防止超出可视区域（如F12调出debug的操作）
    		$(window).on("resize",function(){
                layui.layer.full(index);
            })
    	}
      
      //打开角色分配层
        function toSelectPermission(id) {
        	var index= layui.layer.open({
    			title:'分配角色',
    			type: 2, 
    			area: ['800px','600px'],
    			content: '${ctx}/role/toSelectPermission.action?id='+id , //这里content是一个URL，如果你不想让iframe出现滚动条，你还可以content: ['http://sentsin.com', 'no']
    			success : function(layero, index){
                    var body = layui.layer.getChildFrame('body', index);
                    setTimeout(function(){
                        layui.layer.tips('点击此处返回角色列表', '.layui-layer-setwin .layui-layer-close', {
                            tips: 3
                        });
                    },500)
                }
    		})
    		//默认最大化窗口
            //layui.layer.full(index);
            //改变窗口大小时，重置弹窗的宽高，防止超出可视区域（如F12调出debug的操作）
    		$(window).on("resize",function(){
                layui.layer.full(index);
            })
    	}

    });
    
  

</script>
</body>
</html>